package com.qf.md.type.dao;

import com.qf.entity.md.type.MdItemType;
import com.qf.md.type.vo.MdItemTypeVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author zdl
 * @date 2025/2/28
 */
public interface MdItemTypeDao {
    /**
     * 页面展示所有数据
     * @return
     */
    List<MdItemTypeVO> selectAllMdItemType();

    /**
     * 根据分类名称  是否启用展示
     * @param itemTypeName
     * @param enableFlag
     * @return
     */
    List<MdItemTypeVO> selectByItemNameOrEnableFlag(@Param("itemTypeName")String itemTypeName,@Param("enableFlag") String enableFlag);

    /**
     * 根据item_type_id 查询是否含有子类
     * @param parentTypeId
     * @return
     */
    List<MdItemType> selectByParentTyeId(Long parentTypeId);

    /**
     * 根据itemTypeId 查询
     * @param itemTypeId
     * @return
     */
    MdItemType selectByItemTypeId(Long itemTypeId);

    /**
     * 根据itemTypeId 删除
     * @param itemTypeId
     * @return
     */
    Long delTypeByItemTypeId(Long itemTypeId);

    /**
     * 新增
     * @param mdItemType
     * @return
     */
    Long insertMdType(MdItemType mdItemType);

    MdItemType selectByParentTypeId(Long parentTypeId);

    Long updateType(MdItemType mdItemType);
}
